#include "vl_block_queue.h"
#include <cstdio>
#include <any>

using namespace VL;

class A {
public:
	A(int number) {
		this->number = number;
	}
	int number;
};



int main(int argc, char** argv) {
	BlockQueue<A> queue;
	queue.push(new A(2));
	queue.push(new A(3));
	while(!queue.isEmpty()) {
		std::shared_ptr<A> dataPtr(queue.pop());
		printf("pop: %d\n", dataPtr->number);
	}
	return 0;
}
